#include "app_print.h"
#include "../user/API/Usart1.h"  // 包含UART5_Printf声明
#include <stdio.h>
#include <string.h>

/* ===================== 函数实现 ===================== */

/**
 * @brief  App层格式化打印函数
 * @param  format: 格式化字符串
 * @param  ...: 可变参数
 * @retval None
 * @note   封装UART5_Printf，提供统一的打印接口
 */
void
app_printf(const char *format, ...)
{
    char buffer[256];
    va_list args;
    va_start(args, format);
    
    // 使用vsnprintf格式化字符串
    vsnprintf(buffer, sizeof(buffer), format, args);
    
    // 调用UART5_Printf输出格式化后的字符串
    UART5_Printf("%s", buffer);
    
    va_end(args);
}

/**
 * @brief  初始化App打印模块
 * @param  None
 * @retval None
 */
void
app_print_init(void)
{
    // 打印模块初始化完成
    // 不在此处使用APP_PRINT，避免循环调用
}
